It is today desirable to interconnect different types of telecommunications networks and provide users situated in different types of networks with an opportunity to communicate over these networks, despite differences in communications technology at the user endpoints. This is possible by means of i.a. Media Gateways. A Media Gateway is a telecommunications node that is able to interpret between and interconnect two different types of telecommunications networks. The Media Gateway may for instance interconnect a packet-switched computer network based on IP (Internet Protocol) with PSTN, which is the traditional circuit-switched telephone network. Voice-over-IP is an example of a service that can allow a user in the computer network to communicate with a user in the PSTN. The Media Gateway packs voice traffic from PSTN into IP-packets and sends them on to the computer network and vice versa, unpacks IP-packets from the computer network and converts their payload into voice traffic that is sent on to PSTN.
IP, the Internet Protocol, is a widely used protocol today, much due to the rapid growth of the Internet for which the protocol originally was designed. IP makes use of so called IP-addresses that are used to send data packets to the correct destination. The IP-addressing scheme is hierarchical. An IP-address is a number made up of a number of bits. In the so-called version 4 of IP, the IP-address is a 32-bit number and in the so-called version 6 the IP-address is a 128-bit number. A number of the first bits in the IP-address is used as a network identifier and a number of the last bits is used as an interface identifier. The interface identifier may identify an interface of e.g. a host or a router. Two IP-hosts that are connected to the same network may for instance have interfaces associated with the IP-addresses 10.5.17.2 and 10.5.17.3 respectively. The addresses are written in the form of four numbers separated by dots. Each number represents an octet i.e. an 8-bit number in the IP-address. The example shows that the first three octets of the two host interface addresses are the same. This signifies that the hosts are connected to the same network, or subnet. The hosts are both connected to a subnet identified by the subnet address 10.5.17.0. This subnet is in turn one of many subnets in the higher level subnet identified by the address 10.5.0.0.
An IP-router is a node that connects two or more physical IP-networks with each other and forwards IP-traffic between the different networks. The IP-router forwards information based on an IP destination address contained in each IP data packet. The router keeps routing information in a routing table, which informs the router of where to send data packets marked with a particular destination address. In its simplest form an IP-router will merely forward packets based on its destination address. More complex IP-routers will in addition support more complex functions such as tunneling.
Tunneling is a technique in which virtual pipes are created in an IP-network. By means of tunneling, tunnels that emulate physical links are formed. Several IP-addresses are used in tunneling. Two different types of IP-addresses used in tunneling will be discussed herein. These types of IP-addresses are here called “inner” and “outer” IP-addresses. A router or a gateway will in a first stage route packets based on the outer IP-address. The outer IP-address is associated with an endpoint of the tunnel. At the endpoint of the tunnel a so-called tunnel termination is performed, which among other things involves unpacking the packets so that the outer IP-address is peeled off and an inner IP-address becomes visible, figuratively speaking. The inner IP-address is thus invisible for the router or the gateway until the tunnel is terminated. A second stage routing can then take place based on the now visible inner IP-address. It is possible to create many levels of tunnels so that several levels of outer and inner IP-addresses are created and further stages of routing can take place. Tunneling can be used to set up virtual private networks across wide-area networks (WANs). By using encryption in the tunnels a desired level of security can be achieved. It is further advantageous to use tunnels if many small packets are to be sent to the same destination. Several small packets can then be collected in a large packet with a common outer IP-address to make the routing more efficient.
An IP-router that supports tunneling must comprise functionality for tunnel termination. That is, it must comprise resources that provide the router with the ability to unpack data packets in order to retrieve the inner IP-addresses.
Information relating to IP-routers and tunneling can be found on the Cisco homepage http://www.cisco.com, for instance in the document found under the address http://www.cisco.com/univercd/cc/td/doc/product/software/ios120/12cqcr/inter c/iclogint.htm.
A way in which IP-routers and Media Gateways are implemented is by placing functionality on a number of printed circuit boards (PCBs) which are interconnected by means of a backplane, which for instance may include a switch such as a TDM-switch or a cell-switch. Some boards may be provided with external interfaces on which external telecommunications traffic enters into the node or exits from the node. It may be of interest for telecommunications traffic entering the node on a first external interface, situated on a first PCB, to exit the node on a second external interface, situated on a second PCB. The function that forwards the telecommunications traffic from the first PCB via the backplane to the second PCB is called a forwarding engine (FE). The forwarding engine makes use of a forwarding table that contains information, which helps the FE to forward different traffic streams to the right PCB and connected interface. In order to make forwarding more efficient and to increase scaleability it is today common to use so-called distributed forwarding engines. Distributed forwarding is described in the U.S. Pat. No. 5,509,123, wherein it is described that each network interface is provided with a forwarding engine. Each forwarding engine is capable of forwarding traffic independently of the other forwarding engines and each forwarding engine has its own forwarding table.